package com.patterns.strategy.StrategyEnum;

/**
 * Created by Xiao Yiyun on 2017/5/31.
 * 用枚举类的形式完成策略模式
 */
public enum Calculator {
    //加法运算
    ADD('+') {
        public int exec(int a, int b) {
            return a + b;
        }
    },
    //减法运算
    SUB('-') {
        public int exec(int a, int b) {
            return a - b;
        }
    };

    private char c = ' ';
    //定义成员值类型
    Calculator(char c){
            this.c = c;
    }
    //获得枚举成员的值
    public char getC() {
        return this.c;
    }
    //声明一个抽象函数
    public abstract int exec(int a, int b);
}
